Novedades en PHP 7.X

La versión mayor que deberías estar usando (2020-02-29)

Que grandes cambios/beneficios acarrea moverse de 5.6 a 7.X

Como preambulo, PHP no es un lenguaje como lo pintan por ahí en decadencia o moribundo. Su nueva versión que viene a rejuvenecerlo y su aún gran cuota de mercado, nos lo muestran con potencial para seguir siendo el que pisa más fuerte. enter image description here

Como ejemplo los grandes CMS como Wordpress, Joomla y Drupal ocupan el 40% de la web, a esto se le debería sumar eCommerce de la talla de WooComerce, Magento, Shopify o OpenCart, como la gran cantidad de portales o APIs funcionando con frameworks como Laravel, Sympony o Zend.

Por algo será, que algunos grandes tecnológicos como Facebook, Slack, Yahoo, Flickr o Wikipedia se construyeron en base a él y aún mantienen gran parte en él. Precisamente la 1er compañía que nombre (de Mark Zuckerberg), incursionó en generar su propia maquina virtual/servidor web HHVM que permite compila y ejecuta el PHP a lenguaje máquina on-the-fly, obteniendo un rendimiento 6 veces superior al estándar del lenguaje.

PHP 7

La versión mayor estable y activa de este lenguaje fue lanzada en Diciembre de 2015 . Ya no hay excusas para no estar usando la ultima o alguna de las versiones menores de la versión 7. Si en tu trabajo sigues manteniendo proyectos en 5.6, procurare darte algunos datos para convencer a negocio/jefe/cliente, de que es una ventaja competitiva. Claro que para ti también implica beneficios, pero la idea es que "nos lo compren", así tu jornada sera más sencilla de completar.

Windows no tiene el monopolio de saltear versiones intermedias.

Si bien se trabajo como comunidad sobre la versión 6 desde 2005, el proyecto desgraciadamente se estancó. La comunidad comenzó a perder la fé en esta espera sin fecha límite y el factor ponderante de algunas decisiones técnicas interna del lenguaje que inicialmente se consideraron buenas y luego ya no. Tal es así que se pensó dar soporte Unicode y una mejora sustancial del rendimiento, con el paso del tiempo se entendió que no era moverse en la mejor dirección, apostando por UTF-16 en vez de Unicode. Esto último tuvo lugar en el correr de 2013, siendo un antes y un después sobre el hecho de no concebir PHP 6.X.

Implicó en que se comenzara a trabajar sobre la versión de 5.6 e implementar mejoras graduales de aspectos que ya se notaban como falencia en el lenguaje, respecto a la evolución de otros competidores.

Bueno, pero que nos trae la version 7.X

Para empezar una de las grandes mejoras a sido el rendimiento, una falencia que suele ponerse sobre el tapete a la hora de optar por otro lenguaje para el lado del servidor. Hasta ahora eso era una razón válida, pero ya no!

Si bien depende un poco del tipo de aplicación y/o de con que esté construida (framework, buenas practicas, etc.) a gran escala podemos ver una mejora de entre 150%-200% respecto de la versión 5.6 y la ultima versión estable 7.4 (Febrero 2020).

Si te preguntas en base a qué realizo esta afirmación, los datos de benchmarking los puedes encontrar en este post de Brian Jackson.

Intentare comentar las mejoras en cuanto a funcionalidades/posibilidades del lenguaje, en forma incremental según se introdujeron en cada versión menor:

Inicialmente pense que un único post para todo esté historial de cambios, era buena idea, pero al indagar más a fondo me parecio mejor ir separandolo y mostrar casos prácticos donde aplicar algunos o todos los cambios introducidos en cada versión menor (o la versión mayor en el caso particular de 5.6 a 7.0).